package org.jsola.hr.dao;

import org.apache.ibatis.annotations.Param;
import org.jsola.hr.entity.EmpSocPlanDO;
import org.jsola.hr.query.EmpSocPlanQuery;
import org.jsola.hr.query.EmpSocTransformQuery;
import org.jsola.hr.vo.EmpSocPlanListVO;
import org.jsola.hr.vo.EmpSocTransformVO;
import org.jsola.orm.mapper.IJsolaMapper;
import org.springframework.stereotype.Repository;

import java.util.List;


/**
 * 增减员计划表
 *
 * @author zhr
 */
@Repository("hrEmpSocPlanDAO")
public interface IEmpSocPlanDAO extends IJsolaMapper<EmpSocPlanDO> {

    /**
     * 增减员计划员工列表 V2.0
     *
     * @param empSocPlanQuery 查询参数
     * @param siteId          站点Id
     * @return 增减员计划员工列表
     */
    List<EmpSocPlanListVO> increaseDecreaseList(@Param("empSocPlanQuery") EmpSocPlanQuery empSocPlanQuery,
                                                @Param("siteId") String siteId);

    /**
     * 增减员计划员工列表 V2.0
     *
     * @param companyId 公司Id
     * @param siteId    站点Id
     * @return 增减员计划员工列表
     */
    List<String> notFeedbackList(@Param("companyId") String companyId,
                                 @Param("siteId") String siteId);


    /**
     * 查询某月的反馈成功的增减员记录
     *
     * @param companyId 公司Id
     * @param year      年
     * @param month     月
     * @return 增减员记录
     */
    List<EmpSocPlanDO> selectSuccessFeedbackByMonth(@Param("companyId") String companyId,
                                                    @Param("year") String year,
                                                    @Param("month") String month);
}

